package com.hiutil.util;

import java.sql.Timestamp;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 时间日期辅助类
 * @author xuminrong
 *
 */
public class DateTimeUtil {

	/**
	 * 默认日期格式
	 */
    public static final String DEFAULT_DATE_FORMATE = "yyyy-MM-dd HH:mm:ss";
    private static final SimpleDateFormat defaultFormate = new SimpleDateFormat(DEFAULT_DATE_FORMATE);

    /**
     * 把long 转换成 日期 再转换成String类型
     * @param millSec  毫秒级数据
     * @return
     */
    public static String longToDate(Long millSec) {
        Date date = new Date(millSec);
        return defaultFormate.format(date);
    }

    /**
     * 将时间转换为字符串
     * @param date
     * @return
     */
    public static String dateToString(Date date)  {
    	 return defaultFormate.format(date);
    }

    /**
     * 将时间转换为字符串
     * @param date
     * @return
     */
    public static String sqlDateToString(java.sql.Date date)  {
    	java.util.Date utilDate = new java.util.Date(date.getTime());
    	 return defaultFormate.format(utilDate);
    }

    public static Date stringToDate(String source) {
   	 	try {
			return defaultFormate.parse(source);
		} catch (ParseException e) {
			e.printStackTrace();
			return new Date();
		}
    }

    public static java.sql.Date stringToSqlDate(String source) {
    	java.util.Date date = stringToDate(source);
    	java.sql.Date sqlDate = new java.sql.Date(date.getTime());
    	 return sqlDate;

    }

    /**
     * 将时间转换为字符串
     * @param time
     * @return
     */
    public static String timeToString(Timestamp time) {
    	 return defaultFormate.format(time);
    }

	private DateTimeUtil() {
	}
}
